package com.hon.legionnaire.web.formbean;


import java.util.ArrayList;
import java.util.Date;
import java.util.List;

import com.hon.legionnaire.negocio.vo.ClienteVO;
import com.hon.legionnaire.negocio.vo.CondicaoPagamentoVO;
import com.hon.legionnaire.negocio.vo.ContaReceberVO;
import com.hon.legionnaire.negocio.vo.FuncionarioVO;
import com.hon.legionnaire.negocio.vo.ProdutoVO;
import com.hon.legionnaire.negocio.vo.ProdutoVendaVO;
import com.hon.legionnaire.negocio.vo.VendaVO;

public class VendaFormBean {

	//TELA DE CONSULTA
	private List<VendaVO> listaVenda = null;
	
	//TELA DE INSERIR/EDITAR
	private VendaVO vendaManter;
	private ProdutoVO produtoManter;
	private ProdutoVendaVO produtoVendaManter;
	private boolean desabilitaProdutos = false;
	private boolean desabilitaCondicaoPagamento = false;
	private boolean desabilitaServicos = false;
	private List<ContaReceberVO> listaContaReceberManter;
	private boolean isCancelarDisabled = false;
	private boolean isGravarDisabled = false;
	private boolean isDisabled = false;
	
	//TELA DE POPUP
	private VendaVO vendaPopUp;
	
		
	public VendaFormBean() {
		this.vendaManter = new VendaVO();
		this.vendaManter.setDataVenda(new Date());
		this.vendaPopUp = new VendaVO();
		this.produtoManter = new ProdutoVO();
		//this.produtoManter.setListaProdutoVendaVO(new ArrayList<ProdutoVendaVO>());
		this.produtoVendaManter = new ProdutoVendaVO();
		this.listaContaReceberManter = new ArrayList<ContaReceberVO>();

	}

	//TELA DE CONSULTA
	public List<VendaVO> getListaVenda() {
		return this.listaVenda;
	}
	
	public void setListaVenda(List<VendaVO> listaVenda) {
		this.listaVenda = listaVenda;
	}
	
	//TELA DE INSERIR/EDITAR
	public VendaVO getVendaManter() {
		if (vendaManter.getClienteVO() == null){
			vendaManter.setClienteVO(new ClienteVO());
		}
		
		if (vendaManter.getFuncionarioVO() == null){
			vendaManter.setFuncionarioVO(new FuncionarioVO());
		}
		
		if (vendaManter.getListaProdutoVendaVO() == null){
			vendaManter.setListaProdutoVendaVO(new ArrayList<ProdutoVendaVO>());
		}
		
		if (vendaManter.getCondicaoPagamentoVO() == null){
			vendaManter.setCondicaoPagamentoVO(new CondicaoPagamentoVO());
		}
		
		return this.vendaManter;
	}

	public void setVendaManter(VendaVO vendaManter) {
		this.vendaManter = vendaManter;
	}
	

	//TELA DE POPUP
	public VendaVO getVendaPopUp() {
		if (this.vendaPopUp.getClienteVO() == null) {
			this.vendaPopUp.setClienteVO(new ClienteVO());
		}

		return this.vendaPopUp;
	}
	
	public void setVendaPopUp(VendaVO vendaPopUp) {
		this.vendaPopUp = vendaPopUp;
	}

	public boolean getIsDisabled(){
		return this.isDisabled;
	}

	public void setIsDisabled(boolean isDisabled) {
		this.isDisabled = isDisabled;
	}

	public ProdutoVendaVO getProdutoVendaManter() {
		return produtoVendaManter;
	}

	public void setProdutoVendaManter(ProdutoVendaVO produtoVendaManter) {
		this.produtoVendaManter = produtoVendaManter;
	}

	public ProdutoVO getProdutoManter() {
		return produtoManter;
	}

	public void setProdutoManter(ProdutoVO produtoManter) {
		this.produtoManter = produtoManter;
	}

	public boolean isDesabilitaProdutos() {
		return desabilitaProdutos;
	}

	public void setDesabilitaProdutos(boolean desabilitaProdutos) {
		this.desabilitaProdutos = desabilitaProdutos;
	}

	public boolean isDesabilitaCondicaoPagamento() {
		return desabilitaCondicaoPagamento;
	}

	public void setDesabilitaCondicaoPagamento(boolean desabilitaCondicaoPagamento) {
		this.desabilitaCondicaoPagamento = desabilitaCondicaoPagamento;
	}

	public List<ContaReceberVO> getListaContaReceberManter() {
		return listaContaReceberManter;
	}

	public void setListaContaReceberManter(List<ContaReceberVO> listaContaReceberManter) {
		this.listaContaReceberManter = listaContaReceberManter;
	}

	public boolean getIsCancelarDisabled() {
		return isCancelarDisabled;
	}

	public void setIsCancelarDisabled(boolean isCancelarDisabled) {
		this.isCancelarDisabled = isCancelarDisabled;
	}

	public boolean getIsGravarDisabled() {
		return isGravarDisabled;
	}

	public void setIsGravarDisabled(boolean isGravarDisabled) {
		this.isGravarDisabled = isGravarDisabled;
	}

	public boolean getDesabilitaServicos() {
		return desabilitaServicos;
	}

	public void setDesabilitaServicos(boolean desabilitaServicos) {
		this.desabilitaServicos = desabilitaServicos;
	}
}